/************************************************************/
/***************************定义变量*************************/
/** ********************************************************* */
// jQueryEasyUI对象变量
var jQueryEasyUI;
var datagridJQueryFind = "#dataGrid";
var dataFormDiv = "#dataForm";
var baseRequestUrl = '/dashu-authority/buttonOperate';
var comeRequestUrl = '/dashu-authority/menu';
var appRequestUrl = '/dashu-authority/application';
var formsubmitUrl;
var token=getQueryStr("DASHU_AUTH_TOKEN");
var auth=getQueryStr("auth");
$(function() {
	initDataGrid();
	$("#search").click(function() {
		var param = $.fn.getFormParams(searchFrom);
		$(datagridJQueryFind).datagrid('options').queryParams = param;
		$(datagridJQueryFind).datagrid('reload');
	});
	$("#clearBtn").click(function() {
		clearFrom(searchFrom);
	});
	$("#dlgDIV").hide();
	$.fn.datebox.defaults.formatter = function(date){
		var y = date.getFullYear();
		var m = date.getMonth()+1;
		var d = date.getDate();
		return m+'-'+d+'-'+y;
	}
	
	$("#soreNum").blur(function(){  //keyup事件处理 
		 var tmptxt=$(this).val(); 
		 
		 var reg = new RegExp("^(\\d|[1-9]\\d|100)$");
		  if(!reg.test(tmptxt)){ 
			  $(this).val(tmptxt.replace(/\D|^0/g,''));
			$.messager.alert('Warning','只能输入数字！')
		  }else{

				  if(Number($(this).val()<6)){
					  $(this).val("");
					  $.messager.alert('Warning','编号大小不能小于6！')
				  }else if(Number($(this).val()>32)) {
					  $(this).val("");
					  $.messager.alert('Warning','编号大小不能大于32！')
				  }
			  
		  }
    }).bind("paste",function(){  //CTR+V事件处理 
    	var tmptxt=$(this).val(); 
		 var reg = new RegExp("^[0-9]*$");
		  if(!reg.test(tmptxt)){ 
			  $(this).val(tmptxt.replace(/\D|^0/g,''));  //CSS设置输入法不可用
			$.messager.alert('Warning','只能输入数字！')
		  }else{
			  if(Number($(this).val()<0)){
				  $(this).val("");
				  $.messager.alert('Warning','编号数值不能小于6！')
			  }else if(Number($(this).val()>32)) {
				  $(this).val("");
				  $.messager.alert('Warning','编号数值不能大于32！')
			  }
		  }
    })
	
    
	function ff(object){
		 var tmptxt=object.val(); 
	}
	
	$("#q_menu_name").combogrid({
		idField:'id', //字段   
        textField:'menuName', //显示的字段   
        url:comeRequestUrl+'/findAllByPaging.json?DASHU_AUTH_TOKEN='+token, 
        fitColumns: true,   
        striped: true,   
        editable:true,   
        pagination : true,//是否分页   
        rownumbers:true,//序号   
        collapsible:false,//是否可折叠的   
        fit: true,//自动大小   
        editable : false,// 不可编辑，只能选择   
        pageSize: 10,//每页显示的记录条数，默认为10   
        pageList: [10],//可以设置每页记录条数的列表   
        method:'post',  
        loadFilter:function(data){
			return parseDataGrid(data);
		},
        columns:[[   
            {field:'menuName',title:'菜单名称',width:400},   
        ]],
        onSelect:function(rowIndex, rowData){
        	if(rowData.id){
        		$("#menuId").val(rowData.id);
        	}
        }

    });
	
	$("#menu_name").combogrid({
		idField:'id', //字段   
        textField:'menuName', //显示的字段   
        url:comeRequestUrl+'/findAllByPaging.json?DASHU_AUTH_TOKEN='+token, 
        fitColumns: true,   
        striped: true,   
        editable:true,   
        pagination : true,//是否分页   
        rownumbers:true,//序号   
        collapsible:false,//是否可折叠的   
        fit: true,//自动大小   
        editable : false,// 不可编辑，只能选择   
        pageSize: 10,//每页显示的记录条数，默认为10   
        pageList: [10],//可以设置每页记录条数的列表   
        method:'post',   
        loadFilter:function(data){
			return parseDataGrid(data);
		},
        columns:[[   
            {field:'menuName',title:'菜单名称',width:400},   
        ]],
        onSelect:function(rowIndex, rowData){
        	if(rowData.id){
        		$("#menuId").val(rowData.id);
        	}
        }

    });

	
	$("#application_name").combogrid({
		idField:'id', //字段   
        textField:'applicationName', //显示的字段   
        url:appRequestUrl+'/findAllByPaging.json?DASHU_AUTH_TOKEN='+token,  
        fitColumns: true,   
        striped: true,   
        editable:true,   
        pagination : true,//是否分页   
        rownumbers:true,//序号   
        collapsible:false,//是否可折叠的   
        fit: true,//自动大小   
        editable : false,// 不可编辑，只能选择   
        pageSize: 10,//每页显示的记录条数，默认为10   
        pageList: [10],//可以设置每页记录条数的列表   
        method:'post',   
        loadFilter:function(data){
			return parseDataGrid(data);
		},
        columns:[[   
            {field:'applicationName',title:'系统名称',width:400},   
        ]],
        onSelect:function(rowIndex, rowData){
        	if(rowData.id){
        		$("#applicationId").val(rowData.id);
        	}
        }

    });
	
});

function initDataGrid() {
	$(datagridJQueryFind).datagrid({
		loadMsg:"数据加载中，请稍后……",
		url : baseRequestUrl+'/findAllByPaging.json?DASHU_AUTH_TOKEN='+token,
		toolbar : [{
			id :'button6',
			text : '添加',
			iconCls : 'icon-add',
			handler : function() {
				formsubmitUrl = baseRequestUrl+'/save.json?DASHU_AUTH_TOKEN='+token;
				setDialog("#dlgDIV", '','新增');
				clearFrom(dataFormDiv);
				$("#dlgDIV").show();
			}
		},'-',{
			id :'button7',
			text : '编辑',
			iconCls : 'icon-edit',
			handler : function() {
				var row = $(datagridJQueryFind).datagrid("getSelected");
				if (row) {
					setDialog("#dlgDIV",'','编辑');
					$("#dlgDIV").show();
					clearFrom(dataFormDiv);
					//加载数据
					$(dataFormDiv).form('load',row);
					
					
					formsubmitUrl = baseRequestUrl+'/update.json?DASHU_AUTH_TOKEN='+token;
				} else {
					$.messager.alert("操作提示", "请选择一行", "info");
				}
			}
		},'-',{
			id :'button8',
			text : '删除',
			iconCls : 'icon-cancel',
			handler : function() {
				var rows = $(datagridJQueryFind).datagrid("getSelections");
				if (rows.length == 0 ) {
					$.messager.alert("操作提示", "请至少选择一行", "info");
				} else {
					var ids = [];
					for (var i = 0; i < rows.length; i++) {
						ids.push(rows[i].id);
					}
					$.messager.confirm('确认','您确认想要删除记录吗？',function(r) {
						if (r) {
							$.ajax({
								type : "POST",
								dataType : 'html',
								url : baseRequestUrl+'/deleteByIds.json?DASHU_AUTH_TOKEN='+token+'&ids='+ids,
								success : function(data) {
									var obj = eval('('+ data+ ')');
									console.log(JSON.stringify(obj));
									if (obj.status == 1) {
										$.fn.messageInfoTip(data);
										$(datagridJQueryFind).datagrid('reload');
									}
								},
								error: function(textStatus){
									if(console){
										console.error("ajax出现异常："+textStatus);
									}
									alert(textStatus);
								}
							});
						}else{
							return false;
						}
					});
				}
		}}],
		width : '80%',
		pagination : true,
		pageSize : 10,
		singleSelect : false,
		striped : true,
		sortOrder : 'asc',
		rownumbers : true,
		loadFilter:function(data){
			return data.data;
		},
		onLoadSuccess : function() {
			$(datagridJQueryFind).datagrid('clearSelections');
			for(var i=6;i<=32;i++){
				if (!checkProduct(auth,i)) {
					var buttonId ="#button"+i;
					if ($(buttonId)) {
						$(buttonId).hide();
					}
					
				}
			}
		},
		onLoadError : function() {
		},
		columns : [ [ 
		       {	field : 'id',
					title : 'ID',
					width : 65,
					align : 'center',
					hidden : true,
					sortable : true
				},{
					field : 'name',
					title : '名称',
					width : 90,
					align : 'center',
					sortable : true
				},{
					field : 'menuName',
					title : '菜单名称',
					width : 90,
					align : 'center',
					sortable : true
				},{
					field : 'soreNum',
					title : '编号',
					width : 90,
					align : 'center',
					sortable : true
				},{
					field : 'createTime',
					title : '创建时间 ',
					width : 180,
					align : 'center',
					sortable : true
				}, {
					field : 'updateTime',
					title : '更新时间 ',
					width : 180,
					align : 'center',
					sortable : true
				}
		         ] ]
	});
}


function clearFrom(cform){
	$(cform).form("clear");
}

function submitForm() {
	$('#dataForm').form('submit', {
		url : formsubmitUrl,
		ajax : true,
		onSubmit:function(){
			return $(this).form('validate');
		},
		success : function(data) {
			var obj = eval('(' + data + ')');
			var status = obj.status;
			console.log(JSON.stringify(obj));
			if (status == 1) {
				$.fn.messageInfoTip(data);
				$('#dlgDIV').dialog('close');
				$(datagridJQueryFind).datagrid('reload');
			}else {
				$.fn.messageInfoTip(data);
//				$('#dlgDIV').dialog('close');
			}
		}
	});
}
//加载下拉框数据
function setComboboxData(id,url){
	$.ajax({
		type:"POST",
		dataType:'html',
		url:url,
		success:function(data){
			var obj = eval('('+ data+ ')');
			if (obj.status == 1) {
				$(id).combobox("loadData",obj.data);
			}
		},
		error:function(textStatus){
			if(console){
				console.error("ajax出现异常:"+textStatus);
			}
			alert(textStatus);
		}
	});
}
function setDialog(dialogDiv, hrefHtml, title) {
	$(dialogDiv).show();
	$(dialogDiv).dialog({
		title : title,
		width : 600,
		height : 400,
		closed : false,
		cache : false,
		modal : true,
		buttons : [ {
			text : '保存',
			iconCls : 'icon-ok',
			handler : function() {
				submitForm();
			}
		}, {
			text : '重置',
			iconCls : 'icon-clear',
			handler : function() {
				clearFrom(dataFormDiv);
			}
		}, {
			text : '关闭',
			iconCls : 'icon-remove',
			handler : function() {
				$(dialogDiv).dialog('close');
			}
		} ]
	});
}
